package com.example.mybatisplus.mapper;

import com.example.mybatisplus.model.domain.ConRecord;
import com.example.mybatisplus.model.domain.ConRecordDetail;
import com.example.mybatisplus.model.domain.ConWorkAnalyze;
import com.example.mybatisplus.model.domain.ConditionedConReport;
import com.example.mybatisplus.model.domain.FirstApoStatus;
import com.example.mybatisplus.model.domain.StuInfo;
import com.example.mybatisplus.model.domain.UserAccount;
import com.example.mybatisplus.model.dto.PageDTO;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

/**
 * <p>
 * 用来记录每个学生的咨询记录 Mapper 接口
 * </p>
 *
 * @author cft
 * @since 2022-06-30
 */
public interface ConRecordMapper extends BaseMapper<ConRecord> {

	List<ConRecordDetail> getConRecordDetail(@Param("stu")StuInfo stu,@Param("con")UserAccount con, FirstApoStatus firstApoStatus);

	void updateIsEnd(@Param("conRecord") ConRecord conRecord);

	
	/* 
	 * author:cft
	 * function:得到所有待审核的追加咨询申请
	 */
	List<ConRecordDetail> getExtraConApo(@Param("con")UserAccount con);


	/* 
	 * author:cft
	 * function:得到咨询师的工作情况统计
	 */
	List<ConWorkAnalyze> getConWorkInfo(@Param("con") UserAccount con);

	
	/* 
	 * author:cft
	 * function:按条件查询所有咨询报告
	 */
	List<ConditionedConReport> getConditionedConReport(@Param("stuId")String stuId, @Param("stuName")String stuName, @Param("teacherId")String teacherId,
	@Param("teacherName")String teacherName, @Param("topic")String topic);

}
